Copyright: Copyright 1996 © by Peter Volpa, Circuit Systems, All rights Reserved
Citation: Copyright 1996 © by Peter Volpa, Circuit Systems


  CD-Quick for Windows 95

Overview

Introduction

Features

System Requirements

Ordering

License

Ordering Information

Registering CD-Quick Cache by Credit Card

Registering via CompuServe

Disclaimer

Trademarks

How to…

Install CD-Quick Cache

Uninstall the Software

Choose Between a RAM or Disk Cache

Use Multiple CD-ROM Drives

Utilities

QuickMon Cache Monitor

Changing CD-Quick's Configuration

Getting the Most Out of CD-Quick

Suggestions for Configuring

A word about Windows 95 drivers

Common Questions and Answers

What determines CD-ROM drive performance

CD-ROM Drive Mechanics and Why CD-Quick Cache Helps

How CD-Quick does Caching

Miscellaneous

Revision History

Error Messages

Distribution Points for CD-Quick Cache

Association of Shareware Professionals


Introduction

CD-ROM drives are wonderful pieces of technology.  By using optics instead of magnetics, vast amounts of data can be stored in a small amount of space on a plastic disc.  But as with most technology, there are always design tradeoffs made.  In the case of a data storage system, the tradeoff is between the amount of data that can be stored and the speed with which you can access that data.  Even with 8x CD-ROM drives, the average time it takes to reposition a drive's read head to a new location and start reading data is at least a couple of hundred milliseconds.  Compare that with the under 15 millisecond access times of today's hard drives.  Due to the nature of CD-ROM drive mechanics, this situation will not be changing any time soon.  In a word, CD-ROM drives are slow.

Data caching has been used for years to speed up the performance of magnetic disk drives.  Caching is a memory management technique that reads and stores frequently used data in a memory buffer for fast access.  With caching, every time you request data from your drive, this data is also placed in a buffer.  The next time the data is needed it can be found in RAM, so actual disk reads are saved.  This results in a tremendous increase in performance.  Until recently, effective CD-ROM caching has been unavailable.

Presenting CD-Quick Cache for Windows 95

CD-Quick Cache will dramatically improve the performance of your CD-ROM drive.  By storing frequently read data in either RAM, or on your hard drive, disc reads are almost instantaneous.  CD-Quick uses an intelligent caching algorithm and dynamic read-ahead buffering to insure top performance.

CD-Quick is compatible with virtually all CD-ROM drives supported by Windows 95.  It's important to note that not all CD-ROM drives are fully supported by Windows 95.  If your CD-ROM drive uses an older 16-bit real mode driver, you need to either obtain a new 32-bit driver from your drive's manufacturer or use the DOS/Windows 3.x version of CD-Quick.  The Windows 95 version of CD-Quick is a 32-bit application and can't be used with 16-bit drivers.  Most CD-ROM drives used with Windows 95 do use the new 32-bit drivers.

CD-Quick for Windows 95 is tightly integrated into the operating system and is actually an extension to it.  As such, the software works seamlessly with all applications using your CD-ROM drive.  CD-Quick will operate with as many CD-ROM drives as Windows 95 supports (up to 32).

The unique ability of CD-Quick to use either RAM or a combination of RAM and hard disk storage allows you to configure the software for the very best performance with your applications.  If disk storage is used for the cache, it will be possible in many cases to go with a "minimal install" of your CD-ROM applications.  Normally there is always a tradeoff between the amount of hard drive space used by CD-ROM software and performance.  You can do a "normal" or "maximal" install, get good performance but use a lot of hard drive space.  You can also do a "minimal" install, get poor performance, but use a lot less disk space.  With CD-Quick, you no longer have to make this tradeoff.  If you use hard disk storage for CD-Quick's cache, you can have great performance and use a minimal amount of disk space for your CD-ROM applications!  If you have several CD-ROM applications installed this way, the saving will soon become very apparent.

Included with CD-Quick Cache is the utility, QuickMon.  QuickMon is a Microsoft Windows 95 application that will give you statistical information on CD-ROM and CD-Quick Cache reads.  This utility will show the total reads requested by your application, how many reads CD-Quick has saved and what this percentage was.

In addition, QuickMon is used to change the way CD-Quick is configured.  You can change the cache size, choose between RAM and hard drive cache storage, and have all changes take effect without restarting your computer each time.

CD-Quick loads as a Windows 95 Virtual Device Driver (VxD) and becomes part of the Windows 95 layered block file system.  CD-Quick is full 32-bit protected mode implementation that works with all protected mode CD-ROM drivers.


Features

  	Will work with any CD-ROM drive using a 32-bit protected mode driver.

  	Uses Dynamic Read Ahead Buffering with Fuzzy Logic Control.

  	Can use up to 16MB of RAM or 64MB of hard disk for a CD-ROM cache.

  	Easily handles multiple CD-ROM drives.

  	Easy installation in less than a minute.


System Requirements

  	An IBM or compatible computer with an 80386 or higher processor.

  	At least one CD-ROM drive using a 32-bit protected mode driver.

  	Windows 95.


License

CD-Quick Cache is distributed as Shareware.  It is NOT public domain or free software.

Non-registered users of this software are given the opportunity to evaluate the complete CD-Quick Cache software package for 30 days with no obligation.  If, after the evaluation period, you find CD-Quick to be suitable for your needs, you must register your copy or discontinue using CD-Quick.

What we're saying is if you use this program, then you should pay for your copy.  That way Circuit Systems will be able to provide updates, support, and generally stay in business.

When you register CD-Quick you will receive a personal KeyCode and the latest version of all the software that comprises the CD-Quick package.  Your KeyCode will disable the opening shareware screen and may be used with all future versions of CD-Quick for Windows 95.  This means once you've registered, you're registered for life.  You may use any new versions of CD-Quick Cache for Windows 95 as they become available, free of charge.

Your KeyCode is derived from your name and may not be distributed in any manner.  CD-Quick Cache is LICENSED TO THE SINGLE PERSON WHO REGISTERED THE PROGRAM.

All users are granted a limited license to copy the UNREGISTERED version (this means everything except your KeyCode) of CD-Quick Cache for the trial use of others.  Please feel free to give copies of CD-Quick to your friends and associates.  That's what shareware is about.

This license does NOT include distribution or copying of this software:

  	In conjunction with any other product or service.

  	In general use within a company or school.

  	For any "disk fee" other than a small (generally $2.00 to $5.00) copying charge.

  	For distribution in any modified form.  The file containing this license information MUST be included along with full documentation and all the files that make up this software package.

The data record in the included VENDINFO.DIZ file contains detailed license information governing distribution.


Ordering Information

A CD-Quick Cache registration licenses you to use the product on a regular basis.  Registration also entitles you to lifetime technical support and allows you free use of all future versions of CD-Quick Cache for Windows 95.

An individual registration costs $29.  Upon receipt of your paid registration form, we will send you the latest registered version of CD-Quick Cache with full documentation on the disk.  New Jersey residents should include 6% sales tax.

Site licensing is also available.  Prices are based on the estimated number of users.  Please write for more information.

A CD-Quick Cache registration form is included in the distribution package for your convenience.  You may print an order form when CD-Quick loads by selecting "How to order" and then "Print an order form".  You may also print the file ORDERFRM.TXT anytime.  Please take time to fill this out and return it.  If you would like high-quality software to continue to be made available on a try-first basis and for a reasonable cost, it is up to YOU to support such programs.

Please send your registration form, suggestions and any

comments that you might have to:

 	  Peter Volpa	or	For questions only,

Circuit Systems	 no orders.  Call

          418 Church Road	  (609) 875-5433

   Sicklerville, NJ  08081-1727	  12 - 8 PM EST

Questions may also be sent by Email on CompuServe to 72202,3043 or via the Internet at 72202.3043@compuserve.com


Registering CD-Quick Cache by Credit Card

We have established a special arrangement with the Public (software) Library for those of you who wish to order by credit card.  For credit card orders only, you can order from PsL with your Master Card, Visa, AmEx or Discover card by calling 800-242-4PsL (from overseas: 713-524-6394).  You may also FAX to 713-524-6398 or CompuServe to 71355,470 or mail to PsL, P.O. Box 35705, Houston, TX 77235-5705.  THESE NUMBERS ARE FOR ORDERING ONLY.  Circuit Systems can NOT be reached at those numbers.  To contact Circuit Systems for information about dealer pricing, volume discounts, site licensing, the status of shipment of the product, the latest version number or for technical information, please call Circuit Systems at 609-875-5433 or write to Circuit Systems, 418 Church Road, Sicklerville NJ 08081-1727 USA.  PsL's order number for CD-QUICK is 11726.

PsL's office hours for phone orders are 7AM-6PM CST Monday-Thursday and 7AM-12:30PM CST on Fridays.  Please give your name exactly as it appears on your card and the billing address for the card.


Registering via CompuServe

If you are a CompuServe member, you can register CD-Quick Cache online.  CD-Quick's registration fee will be included in your monthly CompuServe bill.  After you logon, just type 'GO SWREG' for CompuServe's shareware registration service.  CD-Quick's registration number is 10604.


Disclaimer

ALTHOUGH WE HAVE EXTENSIVELY TESTED CD-QUICK CACHE AND BELIEVE IT WILL PERFORM AS DESCRIBED IF USED CORRECTLY, WE SUPPLY THIS PROGRAM AS IS.  CIRCUIT SYSTEMS DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, THAT THIS PROGRAM IS FIT FOR ANY PURPOSE.  CIRCUIT SYSTEMS ALSO ASSUMES NO LIABILITY FOR ANY DAMAGES EITHER DIRECT OR CONSEQUENTIAL, WHICH MAY RESULT FROM THE USE OF THIS PROGRAM.


Trademarks

Windows 95 is a registered trademark of Microsoft Corporation.

PC-DOS, PC/AT, PC/XT, and PS/2 are registered trademarks of IBM Corporation.

Mayo Clinic is a trademark of Mayo Foundation for Medical Education and Research.


Install CD-Quick Cache
Installing CD-Quick Cache

CD-Quick Cache includes a Setup program to make installation very easy.  The Setup program will copy all needed CD-Quick files to your computer and configure it for caching CD-ROM data.

When you start Setup, you will first be asked for the install directory (where you want CD-Quick to be copied to), drive and path.

When this information is provided the Setup program will create a subdirectory on your hard drive called "\CDQUICK".  This may be changed to any other drive or directory as needed.  Setup will copy all the needed CD-Quick Cache files from your floppy drive to that subdirectory.  Setup will also add a choice for the QuickMon Cache Monitor to your Windows Startup menu in the Programs list.

If you have over 40MB of free space on your hard drive, CD-Quick will default to using your hard drive for cache storage.  If hard drive storage is used, you will next be asked if you want to run the Windows 95 utilities ScanDisk and Defrag.  These utilities will test and optimize your hard drive and we strongly recommend their use before using CD-Quick.

Any default options used by CD-Quick can easily be changed later by running QuickMon.  For more information on using QuickMon to change these settings, please refer to the section Changing CD-Quick's Configuration later in the manual.

To run the Setup program, insert your copy of CD-Quick Cache into your floppy drive and select Run from the Windows 95 Startup menu.  Then type: A:SETUP

You may also run Setup from the Windows 95 Explorer.

Follow the directions and before you know it, you will have CD-Quick Cache installed, speeding up your CD-ROM drive.

If you are using the Setup program to upgrade your software, and you need to reenter your Name and KeyCode, an option has been added to prompt you for this information.  Just start Setup with the '/R' switch.  e.g. SETUP  /R   This should normally not be necessary.


Uninstall the Software
Uninstalling the Software

If for any reason you want to return your system to the way it was before you installed CD-Quick, start QuickMon and use your left mouse button to click on QuickMon's icon in the upper left hand corner.  From the drop down menu choose "Uninstall CD-Quick".


Choosing Between a RAM or Disk Cache

CD-Quick has the unique ability to use either RAM or a combination of RAM and your hard drive for cache storage.  Which is best for you depends on the type of software you run.  Of course if you have an great deal of RAM (32 MB would be nice), RAM is always the fastest choice.  RAM can be accessed in microseconds.  On the other hand, in most cases a fast hard drive coupled with a smaller amount of RAM can also perform very well.  If you have at least 40MB of free disk space, CD-Quick's Setup program will configure a 20MB hard drive cache.  If you have less free disk space, a 1MB RAM cache will be allocated.  You can easily change between a RAM or disk and RAM cache by using the Settings page in QuickMon.

Choosing a Cache Size

You may also decide to set the cache size yourself.  In setting a cache size, you should realize that larger cache sizes will increase performance because more data is available.  With the cache holding more data, the chances of finding the data you need increase and the much slower reads of your CD-ROM drive are avoided.

If you're using RAM for your cache, you should keep in mind that the amount of memory you allocate to CD-Quick must be balanced against the needs of other applications in your system.  It's possible to improve the performance of the cache but slow down an application that runs faster with more memory.  You won't have this problem if you select a disk cache, although the amount of free disk space available may be an issue.  The statistics that CD-Quick provides may be helpful in selecting a cache size and optimizing overall performance.

See Suggestions for Configuring for more information.


Using Multiple CD-ROM Drives

When CD-Quick loads it actually becomes part of Windows 95.  As such it supports as many CD-ROM drives as the operating system (32).  A possible problem can arise when using a mixture of CD-ROM drives where some use 32-bit Protected mode drivers and others use the older 16-bit Real mode drivers.  In this case the Windows 95 version of CD-Quick will only cache the drives using 32-bit Protected mode drivers.  For the drives using the older 16-bit Real mode drivers you need to either update your driver software to 32-bits (the best option) or use the DOS/Windows 3.x version of CD-Quick on any drives using Real mode drivers.  The registered version of CD-Quick for Windows 95 includes a licensed copy of the DOS/Windows 3.x version for use on your Windows 95 system.  This way you can use CD-Quick on your Windows 95 system either way.


QuickMon Cache Monitor

CD-Quick's QuickMon utility lets you monitor and control the operation of  CD-Quick.  QuickMon will display status information in a small pop-up window.  This allows you to view cache operation in real time.  As you're using an application to access your CD-ROM, you'll see the cache statistics as they update!  This is another way to get a feel for the improvement CD-Quick provides.  Anytime after CD-Quick is loaded, you can start QuickMon to display status information.  QuickMon is added to your Windows 95 Startup Menu under the Programs heading.

Displayed will be:

The CD-ROM drive cached, Logical transfers (the total number of 2048 byte blocks requested), Physical transfers (the total number of blocks that had to be read from the CD-ROM), Transfers saved (the total number of blocks read from the cache), and Percent saved (the percent of cache transfers vs. physical transfers).

Because of CD-Quick's read-ahead buffering, your actual time savings will almost always be better than what is represented here.  With read-ahead buffering,  CD-Quick will read more data than is requested, saving all of it in the cache.  When that data is later requested (and your CD-ROM's read head is usually somewhere else) this data will be retrieved from the cache.  Performance is improved because the drive didn't have to reposition its read head.  Unfortunately the numbers can't reflect this action.  Transfers weren't saved because data was requested only once and read from the CD only once, but time was saved because the drive head didn't have to move.  Any time you avoid moving the drive head you save time.


Changing CD-Quick's Configuration

QuickMon also allows you to change CD-Quick's cache size, whether RAM or your hard drive is used, and various other options of CD-Quick's operation.  Once QuickMon is started, selecting the Settings tab will display all configuration information.  After you change any settings, click the Apply button to have them take effect.  If you use your hard drive for CD-Quick's cache, and increase your cache size, you may want to run the Windows 95 Defrag utility for best performance.  QuickMon is initially set to be Always on top so it can easily be seen.  This operation can be changed by a choice on its pull down menu.  This menu is activated by using your left mouse button to click on QuickMon's icon in the upper left corner.

CD-Quick offers the option to disable the caching of .AVI Full Motion Video clips.  In most cases this is the best choice.  Most video clips are quite large and play straight through.  Not having them cached allows other files to remain in the cache longer.  If your setup differs from the average (a single speed CD-ROM drive for instance), you may want to turn this option on.


Suggestions for Configuring

Along with the versatility built into CD-Quick can also come some confusion as to what will work best on a given system.  In this section we will try to give some guidance.

The defaults that CD-Quick uses when it is installed are, in most cases, a good starting point for most people.  If you have average amounts of RAM (8-16MB) and uncompressed hard drive space (> 50MB free), usually very little change is necessary.  CD-Quick will set up a 20MB disk cache by default.  If your system differs substantially from the average, you may get better performance by changing CD-Quick’s configuration.

For instance, if you have a great deal more RAM (>24MB), you will get better performance by setting CD-Quick to use RAM storage.  A RAM cache using between 8-16MB of memory would work very well.  RAM is always faster than using your hard drive, but not everyone has as much to spare.

If you play a lot of games, and disk space is no problem, you would do better to set a disk cache larger than the 20MB default.

If your disk drive is compressed, you will do much better to set CD-Quick to use your uncompressed host drive.  Since disk compression takes time, using a compressed drive can slow down CD-Quick.  Every compressed drive has an uncompressed host drive.  In most cases, you can adjust the amount of free space on the host drive to accommodate CD-Quick’s swap file.

If you’re limping along with only 4MB of RAM, don’t use RAM for cache storage.  If you must, be sure to configure the cache to use less than the default of 1MB.  And buy more RAM as soon as you can afford it!

CD-Quick offers the option to disable the caching of .AVI Full Motion Video clips.  In most cases this is the best choice.  Most video clips are quite large and play straight through so saving them in the cache offers no benefit.  Not having them cached allows other files to remain in the cache longer.  If you use video clips differently, you may want to turn this option on instead.

In the end, since everyone has their own unique mix of software, it’s best to try the different settings to see which works best for you.


A word about Windows 95 drivers

Microsoft has gone to great lengths to make Windows 95 compatible with most high level applications (word processors, spreadsheets, database software and even most DOS programs).  They have, however, completely changed the low level file system from the one previously used under DOS and Windows 3.1.  In addition to the change in file system architecture, they have also changed most 16-bit Real mode drivers to 32-bit Protected mode drivers.  Gone are MSCDEX and SmartDrive among others.

In most cases Windows 95 will install a protected mode driver for your CD-ROM drive.  If it does, the Windows 95 version of CD-Quick is just what you need.  If your CD-ROM drive has an interface not supported by Windows 95, your Real mode driver is used as before and you need to use the DOS/Windows 3.x version of CD-Quick.  This version works just fine under Windows 95 if your system uses a Real mode CD-ROM driver.  Drives with an unsupported interface seem to be the exception rather than the rule.

You should also keep in mind that if you boot directly into DOS instead of Windows 95, you need to run with a Real mode CD-ROM driver.  Since Windows 95 is not running in this case, its 32-bit Protected mode drivers are not being used.

The registered version of CD-Quick for Windows 95 includes a licensed copy of the DOS/Windows 3.x version of CD-Quick for use on your Windows 95 system.  This way you can use CD-Quick on your Windows 95 system either way.


Common Questions and Answers

Q.	After installing CD-Quick, I set the cache to use RAM.  Although my CD-ROM seems faster, the overall operation of my computer is slower!  What's wrong?

A.	The problems you are having are related to the way you have apportioned your memory.  If you set CD-Quick to use RAM for its cache, this RAM is not available for other applications.  Windows 95 does a very good job of managing memory, so you will almost never get an out of memory message.  When memory gets low, Windows will swap out some of your data that was in memory to disk.  This frees up memory and is the basis of Windows 95's virtual memory system.  The paging out to disk is a relatively slow operation, however.  If your system is forced to do this frequently, system performance will suffer.  The answer here is to either reduce the amount of RAM set aside for CD-Quick or set the cache to use your hard disk instead of RAM.  QuickMon will enable you to change these settings.

Q.	I've been using QuickMon to monitor cache statistics.  On most CD-ROMs I see a good bit of improvement, but on my Mayo Clinic Family Health Book CD, QuickMon shows that no time was saved at all.  What's going on here?

A.	There are a few CD-ROM applications that do their own caching.  That is, they read the data they need only once and save it in memory.  The next time you access the same information the application itself has it.  It never goes to the CD-ROM twice for data.  When an application does its own caching, CD-Quick never has a chance to speed things up and QuickMon will report that no reads were saved.  CD-ROM applications that do this are rare.  With the vast majority of CD-ROMs CD-Quick will be able to create a noticeable improvement.

Q.	I want to set CD-Quick to use my hard drive to store its cache.  Can I use it with a compressed disk drive?

A. 	Yes you can use CD-Quick with a compressed disk drive, but it’s not recommended.  There are two concerns here.  The first is the issue of performance.  When CD-Quick saves your CD-ROM data to a compressed hard drive, Windows 95 steps in and does the compression.  This requires some processor time and may affect the overall performance of your CD-ROM system.  The other concern is the difficulty of knowing the amount of free disk space a drive contains if it is compressed.  This may cause problems if you set a cache size too close to the reported maximum for a compressed drive.

Q.	I thought Windows 95 already included a CD-ROM cache.  Why do I need CD-Quick?

A.	Yes Windows 95 does do CD-ROM caching on its own, but there's certainly room for improvement here.  The cache that comes with Windows 95 has a maximum size of a little over 1MB.  That's it.  Although this might be large enough for some applications, others will certainly benefit by a larger cache.  If you have enough memory, CD-Quick can set a RAM cache as large as 16MB.  If disk space is available, the cache can be as large as 64MB!  In addition, the Windows 95 cache uses fixed read ahead buffering.  You can select the amount of  read ahead (or even turn it off), but once you set it it stays that way.  Some applications will benefit by doing read ahead while others will suffer for it.  The only way to optimize operation for a wide variety of applications is by using dynamic read ahead buffering as CD-Quick does.  For more information on cache read ahead, see the section How CD-Quick does Caching.


What determines CD-ROM drive performance

Two factors are involved in a CD-ROM drive's performance.  The first is the data transfer rate of the drive.  This parameter is widely touted by manufacturers and has been given a good deal of "press".  We've gone from single speed drives, with a data transfer rate of 150 Kb/S to 8x drives at 1200 Kb/S.  Speeding up the data transfer rate of a drive is a relatively easy thing to do.  A drive's manufacturer designs a drive that simply spins the CD-ROM faster.  That's why there's been such a big increase in the data transfer rate of drives in the past few years.  It's just not that big a feat to design a drive that spins faster.

The other factor affecting a CD-ROM drive's performance is access time, also called seek time.  This is the average time it takes to reposition a drive's read head to a new location and start reading data.  Access time has improved relatively little in the course of developing new drives with faster and faster data transfer rates.  It's not that the drive manufacturers wouldn't like to greatly increase access time, it's just not an easy thing to do.  The hard fact of the matter is you're up against the laws of physics.  Because drive access time hasn't improved all that much, it's role in drive performance has often been downplayed.  You'll hear someone brag about their new 8x drive, but these same people probably don't know the access time of this "speed demon".  You can be sure, however, that it's slow.  Access time is the other piece of the CD-ROM drive performance puzzle.  It's interesting to contrast this situation with that of hard drives.  With hard drives, the performance criteria people talk about is access time!  It's the data transfer rate they have no idea about.


CD-ROM Drive Mechanics and Why CD-Quick Cache Helps

For those of you who are interested, I'd like to give you a brief explanation of the inner workings of CD-ROM drives.  After you understand some of what goes on behind the scenes you'll see why a CD-ROM cache is really a necessity with today's computers.

Data on a CD-ROM is recorded in equal length sectors on a single spiral track that starts at the inner edge of the disc and finishes at the outer edge.  This track is on the order of .6 microns wide, with a turn spacing of 1.6 microns.  A micron, if you don't happen to remember, is equal to a millionth of a meter.  A human hair is about 100 microns in diameter.  A CD-ROM has a track density of about 16,000 turns per inch if you measured across the disc.  If you stretched this track out into a straight line it would measure over 3 miles in length!

A drive's read head assembly consists of a solid state laser, lenses, a beam splitting mirror and a photo diode to detect the reflected light.  In relative terms this assembly is massive.  The magnetic heads used in hard disk drives are tiny by comparison.

CD-ROM drives utilize a principle called constant linear velocity (CLV).  With CLV the data must pass across the read head at the same speed, no matter where on the disc it is positioned.  Because data sectors on the outer and inner edges are the same length, the rotational speed of the disc must constantly change as the read head changes position.  If it didn't, the bits on the outer edge of the disk would pass by almost 3 times faster than those near the center.

 So to summarize the mechanical problem we face, we must precisely follow a very narrow track of data using a relatively massive laser assembly.  At the same time we must constantly vary the rotational speed of the disc so the data passes at a constant linear speed when we move the read head.  And we want to be able to reposition this read head and be ready to access new data as quickly as possible.

As you can imagine, it's just not possible to do this very quickly.  The more mass something has, the slower you can whip it around.  If in addition, you have to position it with sub-micron accuracy, this takes more time.  And if you also have to readjust to a new rotational speed, you need more time still.

This is why CD-ROM access times are slow and it's not going to change any time soon.  Although 6x and 8x speed drives have increased the raw data rate (by increasing the rotational speed), access times have not dropped proportionally.

The key to speeding up CD-ROM performance is to minimize the number of times we reposition the read head.  Because every time we move this head, we waste time.  The way to reduce head movement is to use a cache like CD-Quick.  Once data is read into the cache, it will be accessed from RAM (or disk) instead of the CD.  If we can anticipate data to read when we are positioned at this data, we can minimize head movement.  CD-Quick uses advanced caching techniques to help ensure that the data you need most will be found in the cache.

Using a Cache to increase CD-ROM drive Performance

Since we can only bend the laws of physics so far, how can a given CD-ROM's access time be increased?  The truth is it can't.  But we can do something almost as good.  If we can reduce the number of times a CD-ROM needs to be accessed, we can effectively decrease the average access time!  We can reduce the number of CD-ROM accesses by eliminating unnecessary reads of the CD-ROM.  This technique, called caching, has been used for years to improve the performance of hard drives.


How CD-Quick does Caching

When CD-Quick is loaded on your computer, every time you read data from your CD-ROM drive CD-Quick also saves it to RAM or your (comparatively) faster hard drive.  The next time this same data is needed, CD-Quick intercepts the request and retrieves the data from its cache.  The time to access and move a block of CD-ROM data from RAM memory is microseconds.  Even if you use  your hard drive for cache storage, access time is measured in several milliseconds.

It's not enough to just store CD-ROM data in a fast cache.  It's very important to manage this data in an intelligent manner.  The reason caching works is due to probability.  It's likely that you'll need the data you've just read some time in the future.  Most applications work this way, and as mentioned, it's the basis for caching.  It's certainly possible to write a program that reads a CD-ROM's data only once from start to finish, but it's not at all likely that any useful application would ever work this way.

After the amount of data read is equal to the size of CD-Quick's cache, some data in the cache must be discarded to make room for new data.  CD-Quick uses a "Least Recently Used" (LRU) algorithm when it's time to decide which data gets overwritten.  As you might expect from the name, with LRU the oldest data gets replaced first.  CD-Quick's LRU scheme is very effective at keeping the data you'll most likely want in the cache rather than on the CD.

If data is requested that's not in the cache, it's important that CD-Quick discover this quickly.  CD-Quick uses a hash table to quickly locate data stored in its cache (or not).

Read Ahead Buffering

An additional technique used by some caching software is sector read ahead buffering.  This system is also based on probability.  When reading data from a CD-ROM it's most likely that the next block of data you'll want is the block following the one you've just read.  This certainly won't always be the case.  We're just going with the odds here, but the odds are right often enough.

It's important here to note that you can have a cache that does not do read ahead buffering.  This is a separate feature from the cache itself.  If implemented properly, it's another way to increase performance.

When a cache does read ahead buffering, it reads more data than you've requested.  The requested block of data is read from the CD-ROM, but so is the next sector or two (or three).  The requested data is passed to the application that requested it, and it's also stored in the cache along with the read ahead data.  When and if your application wants data from these additional sectors, it's available in the cache.

So, doing read ahead buffering is a good thing right?  Well that all depends.  If we're reading data sequentially, it's another trick we can use to boost performance.  But what if we're reading data from the CD randomly?  Reading a block, jumping to a new location, reading some more, moving again, reading again, etc.  If we always read ahead the same amount, a cache can quickly fill up with data you'll never want.  This can greatly reduce your effective cache size.  If two out of every three reads is wasted, you're using a cache that's actually only one third the physical size.  For example, say you've got a 1.5 Mb cache set.  If you're reading randomly and you read two additional sectors for each sector read, your working cache size is really only 512K.  You're wasting 1 Mb of memory!

CD-Quick does do read ahead buffering, but in an intelligent manner.  CD-Quick's read ahead is adaptive.  It constantly monitors the actual pattern of your application's reads and then dynamically adjusts the amount to read ahead.  So if data is being read sequentially (reading ahead is a good thing), CD-Quick reads ahead.  If data is being read randomly (reading ahead is a very bad thing), CD-Quick doesn't read ahead.  The software actually uses fuzzy logic to determine the degree of randomness and set the amount to read ahead.  This dynamic read ahead insures CD-Quick will make the very best use of your precious RAM (or disk space).


Revision History

Version 1.20 - 6/10/96

Some Windows 95 CD-ROM drivers still had compatibility problems with CD-Quick.  This has now been fixed for good.  Added the ability to disable caching of .AVI video clips.  CD-Quick no longer requires CTL3D32.DLL.  QuickMon now displays the percent saved when minimized in the Windows 95 task bar.  Setup is unable to add a ShortCut for QuickMon if the Start Menu isn’t in English.  Added a warning message.  Added a text file to aid in uninstalling CD-Quick for those people who won’t read the manual.

Version 1.10 - 4/16/96

Some Windows 95 CD-ROM drivers had problems with CD-Quick, causing the software to lock.  Fixed!  If QuickMon was started without first accessing a CD-ROM drive, a page fault could occur.  Fixed!  CD-Quick wouldn’t delete its old swap file if the drive used for the swap was changed.  Fixed.

Version 1.00 - 3/19/96

First release.


Error Messages

Can't load VCDQD.DLL.  Please reinstall.

Upon startup, CD-Quick needs to load VCDQD.DLL.  This file is part of the CD-Quick package and must be located in the \Windows\System directory.

Can't use selected hard drive for cache storage.  Try another drive.

CD-Quick was unable to open its cache file on the drive you have selected.  Use QuickMon to change settings to another drive.

CD-Quick has not been installed yet!

You're trying to run QuickMon before you've installed CD-Quick.  Run CD-Quick's Setup program and install CD-Quick.

Cache is not installed for drive X:

You have a mix of CD-ROM drives.  Some are using 32-bit protected mode drivers but at least one (drive X:) is using a 16-bit real mode driver.  The Windows 95 version of CD-Quick works only with 32-bit protected mode CD-ROM drivers.  You must either obtain an updated driver or use the DOS/Windows 3.1 version of CD-Quick.

CD-Quick can't start up with a cache this large.

You've selected RAM to be used for your cache, but this much RAM isn't available when Windows 95 starts up.  CD-Quick will set it's cache size as large as possible.

Not enough memory to allocate cache index table.

Insufficient memory was found to allocate CD-Quick's cache index table.  This error should not occur.

Not enough memory to allocate cache read ahead buffer.

Insufficient memory was found to allocate CD-Quick's cache read ahead buffer.  This error should not occur.

Not enough memory to allocate cache.

You've set CD-Quick to use RAM for its cache but not enough memory was found to allocate it.  This error should not occur because CD-Quick will reduce its cache size to fit available memory at start up.

You don't have enough free disk space for a cache this large.

You've set CD-Quick to use your hard drive for its cache but not enough free disk space was available to allocate it.  CD-Quick will set its cache to the largest size allowable.

CD-Quick's executable has been corrupted.  Please reinstall.

Someone or something (another program perhaps) has changed your copy of VCDQD.VXD.  CD-Quick checks itself every time it runs and this check has failed.  Reinstall the program.


Distribution Points for CD-Quick Cache

The latest version of CD-Quick Cache may be found on the ASP's monthly CD-ROM.  All BBS's who are ASP members receive this CD each month.  Check for an ASP BBS near you.  The filename to look for is CDQ95Vxx.ZIP (where xx is the version number).

CD-Quick may also be found in the Windows Shareware forum on CompuServe (GO WINSHARE) in Lib 15.  Look for the filename CDQ95.ZIP.

If you have Internet access, visit us on the World Wide Web!

http://ourworld.compuserve.com/homepages/circuitsys

You can also find CD-Quick on either the ASP's FTP site, at:

ftp.asp-shareware.org/pub/asp/programs/utilites

or any of the several SIMTEL mirror sites.


Association of Shareware Professionals

This program is produced by a member of the Association of Shareware Professionals (ASP).  ASP wants to make sure that the shareware principle works for you. If you are unable to resolve a shareware-related problem with an ASP member by contacting the member directly, ASP may be able to help. The ASP Ombudsman can help you resolve a dispute or problem with an ASP member, but does not provide technical support for members' products.  Please write to the ASP Ombudsman at 545 Grover Road, Muskegon MI 49442-9427 or send a CompuServe message via CompuServe Mail to ASP Ombudsman 70007,3536.  The OMB may be contacted by FAX by sending to the ASP FAX number: (616) 788-2765.  In communication with the OMB please include a telephone number and/or FAX if available.